<?php

class dominio {
    
    static function Turno() {
        return  array(
                    '1'=>'Manhã',
                    '2'=>'Tarde',
                    '3'=>'Noite',
                    '4'=>'Integral',
                );
    }
    static function getTurno($op = ''){
        if($op == '') return '';
        $ele = self::Turno();
        return $ele[$op];
    }
    
    static function TipoSemestre() {
        return  array(
                    '1'=>'Anual',
                    '2'=>'Semestral',
                    '3'=>'Especial',
                );
    }
    
    static function TipoSemestreDmn($op) {
        if($op == '') return '';
        $sem =  array(
                    'Anual'=>'1',
                    'Semestral'=>'2',
                    'Especial'=>'3',
                );
        return $sem[$op];
    }
    
    static function Semestres() {
        return  array(
                    '1'=>'1° sem',
                    '2'=>'2° sem',
                );
    }
    static function getSemestres($op) {
        if($op == '') return '';
        $sem = self::Semestres();
        $sem['0'] = 'Anual';
        return $sem[$op];
    }
        
    static function getTipoSemestre($op){
        if($op == '') return '';
        $ele = self::TipoSemestre();
        return $ele[$op];
    }
    
    static function QtdPagParcSem($sem){
        $num = 0;

        if($sem == self::TipoSemestreDmn('Anual')){  //anual
            $num = 12;
        }else if($sem == self::TipoSemestreDmn('Semestral')){  //semestr
            $num = 5;
        }
        
        return $num;
    }
    
    static function getDataMatricula($ano = 0){
        if($ano == 0 || $ano < date('Y')) $ano = date('Y');
        $datamat = array(
            '1' => array('data' => $ano.'-01-10', 'm' => '01', 'd' => '10'),
            '2' => array('data' => $ano.'-07-10', 'm' => '07', 'd' => '10')
        );
        return $datamat;
    }
    
    static function TipoPegunta() {
        return  array(
                    '1'=>'Texto',
                    '2'=>'Múltipla escolha',
                    '3'=>'Caixa de seleção',
                );
    }
    
    static function getTurma($cur_id = 0,$vagas = 1){
        
        $db = Zend_Db_Table_Abstract::getDefaultAdapter();
        
        //if($cur_id == '') return $arr;
        
        Zend_Loader::loadClass('operacoes','library');
        
        $where = 'CUR_STA = 1 and CUR_ANO >= '.date('Y');

        if($cur_id > 0){
            
            $arr = 'Nenhum';
            
            $query = 'SELECT SQL_CACHE * FROM CURSO WHERE CUR_ID = '.$cur_id; 
            $r = $db->fetchRow($query);
            
            $query = 'SELECT SQL_CACHE * FROM CURSOBASE WHERE CBS_ID = '.$r['CBS_ID']; 
            $cur_cbs = $db->fetchRow($query);
            $semestre = $r['CUR_SEM'] > 0 ? '-'.$r['CUR_SEM']:'';
            $turno = '';
            if($r['TUR_ID'] != 4){
                $query = 'SELECT SQL_CACHE TUR_NOM FROM TURNO WHERE TUR_ID = '.$r['TUR_ID']; 
                $obj = $db->fetchRow($query);
                $turno = ' '.$obj['TUR_NOM'].' ';
            }
            $turma = '';
            if($r['CUR_TRM'] > 0){  
                $query = 'SELECT SQL_CACHE NRT_NOM FROM NUMEROTURMA WHERE NRT_ID = '.$r['CUR_TRM']; 
                $obj = $db->fetchRow($query);
                $turma = ' '.$obj['NRT_NOM'].' ';
            }
            $arr = $cur_cbs['CBS_NOM'] . $turno . $turma . $r['CUR_ANO'] . $semestre;
            if($vagas == 1) $arr .= ' | '.Operacoes::vagasCurso($r['CUR_ID']) .'/'.  $r['CUR_NMRMAXALU'];
            
        }else {
            
            $arr = array('Nenhum');
            
            $query = 'SELECT SQL_CACHE * FROM CURSO WHERE '.$where.' ORDER BY CUR_NOM ASC'; 
            $row = $db->fetchAll($query);
            $arr = array('0'=>'Nenhum'); 
            foreach($row as $r) 
            {          
                $query = 'SELECT SQL_CACHE * FROM CURSOBASE WHERE CBS_ID = '.$r['CBS_ID']; 
                $cur_cbs = $db->fetchRow($query);
                $semestre = $r['CUR_SEM'] > 0 ? '-'.$r['CUR_SEM']:'';
                $turno = '';
                if($r['TUR_ID'] != 4){
                    $query = 'SELECT SQL_CACHE TUR_NOM FROM TURNO WHERE TUR_ID = '.$r['TUR_ID']; 
                    $obj = $db->fetchRow($query);
                    $turno = ' '.$obj['TUR_NOM'].' ';
                }
                $turma = '';
                if($r['CUR_TRM'] > 0){
                    $query = 'SELECT SQL_CACHE NRT_NOM FROM NUMEROTURMA WHERE NRT_ID = '.$r['CUR_TRM']; 
                    $obj = $db->fetchRow($query);
                    $turma = ' '.$obj['NRT_NOM'].' ';
                }
                $arr[$r['CUR_ID']] = $cur_cbs['CBS_NOM'] . $turno . $turma . $r['CUR_ANO'] . $semestre;
                if($vagas == 1) $arr[$r['CUR_ID']] .= ' | '.Operacoes::vagasCurso($r['CUR_ID']) .' / '.  $r['CUR_NMRMAXALU'];
                
            }
        }
        return $arr;
    }
    static function tpoSistemas(){
        return $ele = array(
            '1'   => 'Sistema',
            '2'   => 'Ead',
        );
    }
    static function getTpoSistemas($op = ''){
        $ele = self::tpoSistemas();
        
        return $ele[$op];
    }
    
    static function getClassIcon($ext){
        $icn = ''; 
        
        $arr_icn = array(
            'pdf'   => 'icn_pdr',
            
            'doc'   => 'icn_doc',
            'docx'  => 'icn_doc',
            
            'ppt'   => 'icn_ppt',
            'ppsx'  => 'icn_ppt',
            'pptx'  => 'icn_ppt',
            
            'mp3'   => 'icn_mp3',
            
            'mp4'   => 'icn_vid',   
        );
        
        if(isset($arr_icn[$ext])) $icn = $arr_icn[$ext];
        
        return $icn;
    }
    
     static function getNumeroturma($TUR_ID = '0'){
        $db = Zend_Db_Table_Abstract::getDefaultAdapter();
        $query = 'SELECT SQL_CACHE NRT_NOM FROM NUMEROTURMA WHERE NRT_ID = '.$TUR_ID; 
        $obj = $db->fetchRow($query);
        return $obj['NRT_NOM'];
    }
    
    static function grauEscolaridade() {
        return  array(
                    '1' => 'Ensino Fundamental',
                    '2' => 'Ensino Médio',
                    '3' => 'Pré-Vestibular',
                    '4' => 'Graduação',
                );
    }
    static function getgrauEscolaridade($op = ''){
        if($op == '') return '';
        $ele = self::grauEscolaridade();
        return $ele[$op];
    }
    
    static function tipoEscola() {
        return  array(
                    '1' => 'Pública',
                    '2' => 'Particular',
                );
    }
    static function gettipoEscola($op = ''){
        if($op == '') return '';
        $ele = self::tipoEscola();
        return $ele[$op];
    }
    
    static function alternativasLista() {
        return  array(
                    'A' => 'A',
                    'B' => 'B',
                    'C' => 'C',
                    'D' => 'D',
                    'E' => 'E',
                );
    }
    static function getAlternativasLista($op = ''){
        if($op == '') return '';
        $ele = self::alternativasLista();
        return $ele[$op];
    }
    
    static function tipoAlternativa() {
        return  array(
                    //'0' => 'Tipo da Alternativa',
                    '1' => 'Múltipla Escolha',
                    '2' => 'V ou F',
                    '3' => 'Somatória',
                );
    }
    static function getTipoAlternativa($op = ''){
        if($op == '') return '';
        $ele = self::tipoAlternativa();
        return $ele[$op];
    }
    static function getAlternativa($tpo = ''){
        if($tpo == '') return '';
        else if($tpo == 1){
            return self::alternativa_a_e();
        }else if($tpo == 2){
            return self::alternativa_v_f();
        }else if($tpo == 3){
            return '';
        }
    }
    
    static function alternativa_a_e() {
        return  array(
                    'A' => 'A',
                    'B' => 'B',
                    'C' => 'C',
                    'D' => 'D',
                    'E' => 'E',
                );
    }
    static function getAlternativa_a_e($op = ''){
        if($op == '') return '';
        $ele = self::alternativa_a_e();
        return $ele[$op];
    }
    
    static function alternativa_v_f() {
        return  array(
                    'V' => 'V',
                    'F' => 'F',
                );
    }
    static function getAlternativa_v_f($op = ''){
        if($op == '') return '';
        $ele = self::alternativa_v_f();
        return $ele[$op];
    }
    
    static function staPublicarSimuladoAluno(){
        return $ele = array(
            '0'   => 'Pendente',
            '1'   => 'Publicado Resultado',
        );
    }
    static function getStaPublicarSimuladoAluno($op = ''){
        $ele = self::staPublicarSimuladoAluno();
        return @$ele[$op];
    }
    
    static function staPublicarSimulado(){
        return $ele = array(
            '0'   => 'Inativo',
            '1'   => 'Publicado Cartão',
            '2'   => 'Publicado Resultado',
        );
    }
    static function getStaPublicarSimulado($op = ''){
        $ele = self::staPublicarSimulado();
        return @$ele[$op];
    }
    
    static function modeloImpresoras(){
        return $ele = array(
            '1'   => 'Impresora Normal',
            '2'   => 'Zebra ZXP Series 1 USB Card Printer',
        );
    }
    static function getModeloImpresoras($op = ''){
        $ele = self::modeloImpresoras();
        return @$ele[$op];
    }
    
    static function staListaTesteAluno(){
        return $ele = array(
            '0'   => 'Não Realizada',
            '1'   => 'Realizada',
        );
    }
    static function getStaListaTesteAluno($op = '0'){
        $ele = self::staListaTesteAluno();
        return @$ele[$op];
    }
    
    static function staListaSimuladoAluno(){
        return $ele = array(
            '0'   => 'Não Realizada',
            '1'   => 'Realizada',
        );
    }
    static function getStaListaSimuladoAluno($op = '0'){
        $ele = self::staListaSimuladoAluno();
        return @$ele[$op];
    }
    
}